export default {
	// 是否可见，父组件中来触发是否打开关闭弹窗
	modelValue: Boolean,
	// 圆角值
	borderRadius: {
		type: [Boolean, String, Number],
		default: 0
	},
	// 是否允许点击遮罩关闭日历
	modalClose: {
		type: Boolean,
		default: true
	},
	// 是否显示标题
	showTitle: {
		type: Boolean,
		default: true
	},
	// 日历顶部标题
	title: {
		type: String,
		default: '日期选择'
	},
	// 日期行高
	rowHeight: {
		type: [String, Number],
		default: 56
	},
	// 主题色，对底部按钮和选中日期有效  (默认 ‘#3c9cff' )
	color: {
		type: String,
		default: () => uni.$xl.global?.themeColor || '#0a93ff'
	},
	// 最小的可选日期
	minDate: {
		type: [String, Number],
		default: 0
	},
	// 最大可选日期
	maxDate: {
		type: [String, Number],
		default: 0
	},
	// 是否显示农历
	showLunar: {
		type: Boolean,
		default: true
	},
	// 是否显示月份背景色
	showMark: {
		type: Boolean,
		default: true
	},
	// 是否为只读状态，只读状态下禁止选择日期
	readonly: {
		type: Boolean,
		default: false
	},
	// 	是否展示确认按钮
	showConfirm: {
		type: Boolean,
		default: true
	},
	
	// 日期类型选择，single-选择单个日期，multiple-可以选择多个日期，range-选择日期范围
	mode: {
		type: String,
		default: 'single'
	},
	// 默认选中的日期，mode为multiple或range是必须为数组格式
	defaultDate: {
		type: [Array, String, Date, null],
		default: null
	},
	// mode=multiple时，最多可选多少个日期
	maxCount: {
		type: [String, Number],
		default: Number.MAX_SAFE_INTEGER
	},
	
	// mode=range时，第一个开始日期的提示文字
	startText: {
		type: String,
		default: '开始'
	},
	// mode=range时，最后一个结束日期的提示文字
	endText: {
		type: String,
		default: '结束'
	},
	// 日期格式化函数
	formatter: {
		type: [Function, null],
		default: null
	},
	// 确定按钮的文字
	confirmText: {
		type: String,
		default: '确定'
	},
	// 确认按钮处于禁用状态时的文字
	confirmDisabledText: {
		type: String,
		default: '确定'
	},
	
	// 日期区间最多可选天数，默认无限制，mode = range时有效
	maxRange: {
		type: [Number, String],
		default: Number.MAX_SAFE_INTEGER
	},
	// 范围选择超过最多可选天数时的提示文案，mode = range时有效
	rangePrompt: {
		type: String,
		default: ''
	},
	// 是否允许日期范围的起止时间为同一天，mode = range时有效
	allowSameDay: {
		type: Boolean,
		default: false
	},

	// 前面展示月份数量
	preMonthNum : {
		type : [Number, String],
		default : 3
	},
	// 后面展示月份数量
	nextMonthNum : {
		type : [Number, String],
		default : 3
	},
}
